Systems for dynamically generating and presenting narrative content

ABSTRACT

In some embodiments, a non-transitory processor-readable medium stores code representing instructions that when executed cause a processor to select a narrative content template based at least in part on a predetermined content type associated with a real-world and/or virtual event. The code further represents instructions that when executed cause the processor to select a narrative tone type. The code further represents instructions that when executed cause the processor to, for each phrase included in an ordered set of phrases associated with the narrative content template, select, based at least in part on the narrative tone type, a phrase variation from a set of phrase variations associated with that phrase, and define, based on the selected phrase variation and at least one datum from a set of data, a narrative content portion associated with the real-world event. The code further represents instructions that when executed cause the processor to output, at a display, the narrative content portion.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/868,161, filed Sep. 28, 2015 and issued as U.S. Pat. No. 9,535,879 onJan. 3, 2017, entitled “SYSTEMS FOR AUTOMATED REAL-TIME VOCAL SPORTSCOMMENTARY WITH DYNAMICALLY GENERATED NARRATIVE CONTENT,” which is acontinuation of U.S. patent application Ser. No. 13/969,834, filed Aug.19, 2013 and issued as U.S. Pat. No. 9,146,904 on Sep. 29, 2015, whichis a continuation of U.S. patent application Ser. No. 13/081,052, filedApr. 6, 2011 and issued as U.S. Pat. No. 8,515,737 on Aug. 20, 2013,which claims the benefit and priority to U.S. provisional patentapplication No. 61/359,470, entitled “Automatically Generated EventContent” filed on Jul. 23, 2010, and U.S. provisional patent applicationNo. 61/321,487, entitled “Methods and Systems for Dynamically Generatingand Presenting Sports Content” filed on Apr. 6, 2010, both of which arehereby incorporated by reference in their entireties.

BACKGROUND

Some embodiments described herein relate generally toprogrammatically-generated narrative content, and more particularly toprogrammatically- and dynamically-generated narrative content associatedwith one or more events, occurrences, facts, persons, places and/orthings.

As content providers have moved to broaden and deepen their own news andother media offerings, they have accordingly sought ways to improveefficiency and minimize the cost of content generation. Among suchorganizations' greatest expenses are the salary and operating costsinherent in maintaining a journalistic staff of reporters and editors.Thus, a need exists for systems and methods that enable a contentprovider to generate narrative content without the use of a human writerand editor. More specifically, a need exists for systems and methods todynamically generate and present narrative content based on one or moreevents, occurrences, facts, persons, places and/or things, such assporting events, teams and/or players, financial institutions and/ormarkets, weather conditions, general news items, and/or the like.

SUMMARY

In some embodiments, a non-transitory processor-readable medium storescode representing instructions that when executed cause a processor toselect a narrative content template based at least in part on apredetermined content type associated with a real-world event. The codefurther represents instructions that when executed cause the processorto select a narrative tone type. The code further representsinstructions that when executed cause the processor to, for each phraseincluded in an ordered set of phrases associated with the narrativecontent template, select, based at least in part on the narrative tonetype, a phrase variation from a set of phrase variations associated withthat phrase, and define, based on the selected phrase variation and atleast one datum from a set of data, a narrative content portionassociated with the real-world event. The code further representsinstructions that when executed cause the processor to output, at adisplay, the narrative content portion.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a schematic block diagram that illustrates a narrative contentgeneration system, according to an embodiment.

FIG. 2 is a schematic diagram that illustrates a content generationengine having multiple hardware components and storing multiple softwaremodules, according to another embodiment.

FIG. 3 is a schematic block diagram that illustrates a narrative contentgeneration system, according to another embodiment.

FIG. 4 is a block diagram that illustrates a method of selecting anarrative content template and defining a narrative content portionbased thereon, according to another embodiment.

FIG. 5 is a flow diagram that illustrates a method of defining anarrative content portion based on an event ID, received statisticsinformation, a selected narrative content template, a selected tone anda set of selected phrase variations, according to another embodiment.

DETAILED DESCRIPTION

In some embodiments, a non-transitory processor-readable medium storescode representing instructions that when executed cause a processor toselect a narrative content template based at least in part on apredetermined content type associated with a real-world and/or virtualevent. The code further represents instructions that when executed causethe processor to select a narrative tone type. The code furtherrepresents instructions that when executed cause the processor to, foreach phrase included in an ordered set of phrases associated with thenarrative content template, select, based at least in part on thenarrative tone type, a phrase variation from a set of phrase variationsassociated with that phrase, and define, based on the selected phrasevariation and at least one datum from a set of data, a narrative contentportion associated with the real-world and/or virtual event. The codefurther represents instructions that when executed cause the processorto output, at a display, the narrative content portion.

FIG. 1 is a schematic block diagram that illustrates a narrative contentgeneration system, according to an embodiment. More specifically, FIG. 1illustrates a narrative content generation system 100 that includes anexternal statistics provider 105 operatively coupled to a contentgeneration engine 120 and to a template and statistics database 130 viaa network 110. The content generation engine 120 is further coupled tothe content generation database 130 and to a content database 140. Thecontent database 140 is coupled to a content server 150, which isoperatively coupled to a client device 160 and to a client device 170via the network 110.

The statistics provider 105 can be any service that provides statistics(e.g., sports statistics, financial market statistics), news information(e.g., newswires, weather forecasts and data), and/or other informationassociated with a past, current, or future real-world event, person,place and/or thing. The statistics provider 105 can further providestatistics, news information and/or other information associated withone or more virtual events (e.g., information, data and/or statisticsassociated with a video game, a fantasy sports league and/or team, etc.)For example, the statistics provider 105 can be a sports statisticsservice that provides substantially real-time data associated withcompleted, in-progress and/or scheduled sporting events (e.g., completedgame statistics, in-game statistics), one or more athletes, teams and/orleagues (e.g., player statistics, team statistics, injury reports,season statistics), etc. In another example, the statistics provider 105can be a weather information service that provides weather reports,forecasts, current conditions (e.g., temperature, barometric pressure),map information (e.g., satellite maps, radar maps), etc.

Although not shown in FIG. 1, in some embodiments the statisticsprovider 105 can itself receive one or more information reports (e.g.,statistic reports) from one or more other sources (not shown in FIG. 1).In such embodiments, the statistics provider 105 can aggregate receivedinformation for subsequent transmission to the content generation engine120 and/or the content generation database 130 via the network 110. Insuch embodiments, the statistics provider 105 can send the informationfrom a single physical location. Alternatively, the statistics provider105 can send data from multiple physical locations, each physicallocation being associated and/or affiliated with the statistics provider105. In some embodiments, the statistics provider 105 can be owned,operated and/or administered by a third-party entity not related and/oraffiliated with the other elements of the narrative content generationsystem.

The network 110 can be any computer or information network capable ofmarshalling, transmitting, routing, directing and/or forwarding databetween two or more hardware devices and/or software modules. Forexample, the network 110 can be a local area network (LAN), a wide areanetwork (WAN) or the Internet. In some embodiments, the network 110 canbe comprised of one or more wired and/or wirelessly connected hardwaredevices. As shown in FIG. 1, the network 110 can operatively coupleand/or connect the statistics provider 105 to the content generationengine 120 and/or the content generation database 130. As also shown inFIG. 1, the network 110 can operatively couple and/or connect either orboth of the client device 160 and the client device 170 to the contentserver 150.

The content generation engine 120 can be any combination of hardwareand/or software (executing in hardware) configured to define narrativecontent based at least in part on information received from thestatistics provider 105 and/or the content generation database 130. Thecontent generation engine 120 can be, for example, a server deviceexecuting one or more software modules configured to combine information(e.g., statistics and/or other data received from the statisticsprovider 105 and/or the content generation database 130) with anarrative content template (e.g., a narrative content template selectedfrom the content generation database 130) to define a narrative contentportion (e.g., an article, report, summary, preview, bullet point,short-form text, etc.). The received information can be, for example,statistics information and/or data associated with a given event,occurrence, fact, person, place and/or thing (e.g., sports statisticsinformation, weather history or forecast information, etc.). In additionto the narrative content template, the content generation engine 120 canalso receive, from the content database 130, one or more phrases and/orphrase variations associated with the selected narrative contenttemplate.

In some embodiments, the content generation engine 120 can be and/or caninclude multiple hardware modules and/or devices included in a singlechassis and/or located within or as separate physical devices.Alternatively, the content generation engine 120 can include multiplephysical devices operatively and/or physically coupled via a network(e.g., a private network (not shown in FIG. 1)).

The content generation database 130 can be a database and/or a databaseserver storing one or more databases including one or more narrativecontent templates, identifiers of one or more persons, places, things,facts, events, occurrences, sports leagues, teams and/or athletes,locations, forecasts, etc., and/or statistics and/or other informationassociated with the same. Additionally, the content generation database130 can store phrases, phrase variations, tone types, themes and/ortheme types, and/or other information associated with one or morenarrative content templates. In some embodiments, the content generationdatabase 130 can include one or more relational databases including oneor more relational database tables. For example, the content generationdatabase 130 can include one or more Oracle, Microsoft SQL Server,MySQL, PostgreSQL, Informix and/or other databases storing theinformation described above.

The content database 140 can be a database and/or a database serverstoring one or more databases including one or more previously-generatednarrative content portions defined by the content generation engine 120.In some embodiments, the content database 140 can include one or morerelational databases including one or more relational database tables,similar in structure, type, format, hierarchy and/or organization tothose/that included in the content generation database 130. Although notshown in FIG. 1, the content database 140 can be included in and/orstored at the same physical device as the content generation database130. In such embodiments, one or more tables of the content database 140can optionally be included in the same database as the contentgeneration database 130. Alternatively, one or more portions of thecontent database 140 (e.g., entire databases and/or relational databasetables) can be stored across multiple devices, such as database serverdevices (not shown in FIG. 1).

The content server 150 can be any combination of hardware and/orsoftware (executing in hardware) configured to serve (i.e., send)narrative content (e.g., previously-generated narrative content storedin the content database 140) to one or more client devices. As shown inFIG. 1, the content server 150 is operatively coupled, via the network110, to the client device 160 and to the client device 170. Thus, thecontent server 150 can be configured to send narrative content to eitheror both of the client device 160 and the client device 170. Although notshown in FIG. 1, in some embodiments, the content server 150 can servenarrative content to any number of client devices connected via thenetwork 110. In this manner, the content server 150 can sendprogrammatically-generated narrative content for consumption by one ormore users of one or more client devices. Although not shown in FIG. 1,the content server 150 can optionally be a physical device operativelycoupled to the content database 140. Alternatively, the content server150 can be a software module executing at a computing device, such as aserver device at which any of the content generation engine 120, thecontent generation database 130 and/or the content database 140 ishosted. In some embodiments, the content server 150 can servepreviously-generated narrative content via one or more web serversand/or application servers executing thereat. For example, the contentserver 150 can host and/or execute a version of the Apache or MicrosoftInternet Information Server (IIS) web servers to facilitate access tothe narrative content by client devices.

Each of the client device 160 and the client device 170 can be anycomputing device (e.g., a personal computer, laptop, notebook, netbook,tablet, smartphone, mobile computing device) configured to receiveand/or display narrative content received from the content server 150via the network 110. For example, the client device 160 can be apersonal desktop computer executing a web browser or other clientapplication capable of receiving (e.g., from a web server) anddisplaying dynamically-defined narrative content similar to thatdescribed above. In some embodiments, the client device 170 can be, forexample, a mobile telephone (e.g., a web-enabled smartphone) capable ofcommunicating, via the Internet, with one or more web servers and/ordatabases. In such embodiments, the client device 170 can receive one ormore narrative content portions, articles, reports, etc. and/or displaythe same for viewing by a user. Although only two client devices areshown in FIG. 1, in some embodiments any number of compatible clientdevices can be operatively and/or physically coupled to the network 110,and thus capable of receiving and/or displaying previously-generatednarrative content received from the content server 150.

FIG. 2 is a schematic diagram that illustrates a content generationengine having multiple hardware components and storing multiple softwaremodules, according to another embodiment. More specifically, FIG. 2 is asystem block diagram of a content generation engine 200, similar to thecontent generation engine 150 described in connection with FIG. 1 above.The content generation engine 200 includes a processor 210 operativelycoupled to a memory 220 and to a network card 230. As shown in FIG. 2,the memory 220 includes three software modules: a communication module222, a statistics analysis module 224 and a content generation module226. In some embodiments, the content generation engine 200 can includeadditional hardware modules and/or software modules (executing inhardware) not shown in FIG. 2. For example, the content generationengine 200 can include one or more input devices and/or peripherals, oneor more data input ports, etc.

The processor 210 can be any processor (e.g., a central processing unit(CPU), an application-specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA)) configured to execute one or moreinstructions received from, for example, the memory 220. In someembodiments, the processor 210 can be a Reduced Instruction Set (RISC)processor. As shown in FIG. 2, the processor 210 can be in communicationwith any of the memory 220 and the network card 230. In someembodiments, the processor 210 can accordingly send information (e.g.,data, instructions and/or network data packets) to and/or receiveinformation from any of the memory 220 and the network card 230.

The memory 220 can be any memory (e.g., a RAM, a ROM, a hard disk drive,an optical drive, other removable media) configured to store information(e.g., an operating system, one or more software applications,statistics and/or news information, media content, text content, etc.).As shown in FIG. 2, the memory 220 can include the communication module222, the statistics analysis module 224 and the content generationmodule 226. In some embodiments, the memory 220 can include instructions(e.g., code) sufficient to define and/or execute the communicationmodule 222, the statistics analysis module 224 and the contentgeneration module 226.

The communication module 222 can include software instructions (e.g.,code) configured to cause the processor 210 to exchange information(e.g., data packets, data cells) with another hardware device. Forexample, the communication module 222 can include instructionsconfigured to cause the processor 210 and/or the network card 230 toreceive statistics and/or other information from a statistics provider(e.g., the statistics provider 105 of FIG. 1). The communication module222 can also include instructions configured to cause the processor 210and/or the network card 230 to exchange one or more data packets withone or more databases (e.g., the content generation database 130 and/orthe content database 140 of FIG. 1). Although not shown in FIG. 2, insome embodiments, the communication module 222 can be any validcombination of hardware and/or software, including, e.g., an ASIC, anFPGA, a firmware module, etc.

The statistics analysis module 224 can include software instructions(e.g., code) configured to cause the processor 210 to analyze one ormore statistics and/or other information received and/or stored at thecontent generation engine 200 (at, e.g., the memory 220 and/or anothermemory included in and/or coupled to the content generation engine 200).For example, the statistics analysis module 224 can be configured tocompute one or more derivative statistics and/or metrics based at leastin part on received statistics and/or other information (e.g.,statistics received from the content generation database 130 of FIG. 1).The statistics analysis module 224 may derive statistics at differentlevels of granularity (e.g., while a sports team or individual player isplaying at home or away, statistics during sports playoffs, statisticsduring wins or losses, and the like). The statistics may be stored inone or more databases. Algorithms may be run on the data or content todetermine the most interesting events, trends, and results that occurredduring or as a result of the event. Templates may be used to generatecontent based on the most interesting items. Although not shown in FIG.2, in some embodiments, the statistics analysis module 224 can be anyvalid combination of hardware and/or software, including, e.g., an ASIC,an FPGA, a firmware module, etc.

The content generation module 226 can include software instructions(e.g., code) configured to cause the processor 210 to define a newnarrative content portion (e.g., an article, report, summary, preview,bullet point, sentence, paragraph, vignette, etc.). Although not shownin FIG. 2, in some embodiments, the content generation module 226 can beany valid combination of hardware and/or software, including, e.g., anASIC, FPGA, a firmware module, etc. In an example, the contentgeneration module 226 can include instructions to receive a request todefine a new narrative content portion associated with a specifiedsporting event, such as a basketball game played at a specified venuebetween two opposing teams comprised of multiple players. In theexample, the content generation module 226 can receive an eventidentifier (ID) associated with the basketball game, and can accordinglyperform one or more database queries for statistics and/or informationassociated with that event ID in a database (e.g., the contentgeneration database 130 of FIG. 1). Thus, in the example, the contentgeneration module 226 can receive event, league, team and/or playerstatistics associated with the event ID, such as an event location andstarting time, a league name, one or more team names and/or win/lossrecords, one or more player names, jersey numbers, personalcharacteristics and/or previous performance statistics, etc.

Although not shown in FIG. 2, the received statistics and/or otherinformation can be of varying levels of granularity, and can include, inthe example, home and road split statistics for team win/loss records orother performance statistics, in-conference and/or out-of-conferenceteam win/loss records, etc. In some embodiments, the received statisticsand/or other information can include identifiers, such as team IDs,player/participant IDs, venue IDs, etc. In such embodiments, the contentgeneration module 226 can perform (i.e., send) subsequent queries to thecontent generation database 230, such that statistics, identifiersand/or other information associated with each of the above is returnedback to the content generation module 226 for use in defining thenarrative content portion.

Upon receipt of the above-described information, the content generationmodule 226 can select a narrative content template for use in definingthe narrative content portion. In some embodiments, the contentgeneration module 226 can first determine a template type for use inselecting the narrative content template itself. The template type canbe determined based on, for example, a template type identifier receivedin conjunction with the event ID.

Alternatively, the template type can be determined based at least inpart on user input and/or based on a content type associated with theevent (e.g., a content type associated with the event ID in the contentgeneration database 230). Alternatively or additionally, the templatetype can be determined based at least in part on a content typeassociated with a real-world event, including an occurrence, fact,person, place and/or thing about or for which the narrative content willbe defined. Alternatively or additionally, the template type can bedetermined based at least in part on a content type associated with oneor more virtual events (e.g., information, data and/or statisticsassociated with a video game, a fantasy sports league and/or team,etc.), including an occurrence, fact, character, result and/or otherinformation about which the narrative content will be defined. Thetemplate type can be, for example, an event preview template type, anin-progress event report template type, an event summary template type,etc.

Having determined the template type, the content generation module 226can next select, from a database, a narrative content template of theselected template type. For example, the content generation module 226can send a query to a content generation database (e.g., the contentgeneration database 130 of FIG. 1) for a list of narrative contenttemplates of the selected template type, from which it can select asingle narrative content template for use in defining the narrativecontent portion. Alternatively, the content generation module 226 cansend a request to the content generation database 230 for a single,randomly-selected or pseudo-randomly-selected narrative content templateof the selected template type. In this manner, the content generationmodule 226 can ensure that, on average, the set of narrative contenttemplates used by the content generation engine 226 to define narrativecontent includes at least a minimum degree of variety.

Alternatively, the content generation module 226 can request, from thecontent generation database 230, a specified narrative content templateof the selected template type (e.g., a template specified by userinput). For example, the content generation module 226 can request aspecified narrative content template that includes text associated witha given theme, such as a series of events, an ongoing topic of interest,etc. In a more specific example, the content generation module 226 canrequest or select a narrative content template associated with, forexample, a sports tournament and/or period of a sports season (e.g., aplayoff period, conference championship week period, etc.). In someembodiments, the selected narrative content template can include textassociated with and/or based at least in part on a predefined authorstyle, such as a writing or composition style of a given author,journalist or other individual. In such embodiments, the selectednarrative content template can include phrases and/or phrase variationsconstructed in a similar style, fashion and/or manner to those of theauthor, journalist or other individual.

Once it has received the selected narrative content template, thecontent generation module 226 can optionally determine, define, orselect a narrative tone to be associated with the new narrative contentportion. In some embodiments, the content generation module 226 cananalyze the received statistics and/or other information to determinewhich narrative tone would be appropriate based on the receivedinformation. For example, if the received statistics and/or otherinformation indicates a positive event, or likely positive outcome to anevent, occurrence, etc., the content generation module 226 can define orselect a positive, sanguine, energetic, hopeful, or other similar tone.In a more specific example, the narrative tone can be selected based atleast in part on a recent or historic performance of one or more sportsteams and/or athletes, on one or more participant rankings, on aphysical location of the event or occurrence, and/or on informationassociated with another individual or group of individuals included ormentioned in the received statistics and/or other information.Alternatively or additionally, the content generation module 226 canselect the narrative tone based on one or more contextual factorsassociated with the real-world or virtual-world event, occurrence,person, place or thing (i.e., with the subject or topic of the newnarrative content portion). Further, in some embodiments, the narrativetone can be selected based at least in part on a given portion of theselected narrative content template itself.

The content generation module 226 can next define a narrative contentportion using the selected narrative content template. Morespecifically, the content generation module 226 can parse through thenarrative content template and include, in the new narrative contentportion, each plain language phrase included in the narrative contenttemplate. To preserve the substantive flow and order of the narrativecontent template, the content generation module 226 can parse eachalphanumeric character of the narrative content template in order,successively and/or sequentially writing to the new narrative contentportion each alphanumeric character. For example, if a first phrase ofthe selected narrative content template includes the text “It will be ameeting of two rivals,” the content generation module 226 canaccordingly include this text, in the above order, in the narrativecontent portion.

In defining the narrative content portion, the content generation module226 can also, for each variable identifier included in the narrativecontent template, include, in a corresponding location/position withinthe new narrative content portion (and in lieu of the variableidentifier itself), a statistic, datum, name, or other numerical orlexicographical value received from the database and corresponding tothat variable identifier. For example, if a variable identifier includedin a given location within the narrative content template is$HOME_TEAM_NAME, the content generation module 226 can include, in acorresponding location/position within the narrative content portion, aname of a home team for the relevant event (e.g., “Boston Celtics”).Thus, for the following example portion of a selected narrative contenttemplate: “The $HOME_TEAM_NAME will face the $AWAY_TEAM_NAME at $VENUEin $VENUE_LOCATION on $EVENT_DATE. at $VENUE_TIME”, the contentgeneration module 226 can define the following portion of the narrativecontent template: “The Boston Celtics will face the New York Knicks atMadison Square Garden in New York City, N.Y. on Apr. 10, 2011, at 7:05pm.” In this manner, by iterating through each text portion and variableidentifier portion of the selected narrative content template, thecontent generation module 226 can combine generic text of the selectednarrative content template with specific details, facts, statistics,etc. associated with the event ID to dynamically define a new narrativecontent portion.

Although not described above, in some embodiments, each phrase (e.g.,portion of language and/or variable identifiers) included in theselected narrative content template can optionally be associated withmultiple phrase variations. In such embodiments, the content generationmodule 226 can, for each phrase from the narrative content template,first select (e.g., randomly select, pseudo-randomly select) a singlephrase variation from the multiple phrase variations associated withthat phrase, and then write the text and/or data included in thatselected phrase variation to the narrative content portion in lieu ofthe original phrase and/or phrase identifier included in the selectednarrative content template.

In some embodiments, each phrase variation from the multiple phrasevariations associated with a given phrase included in the selectednarrative content template can be associated with a predefined and/orpredetermined tone. For example, a given phrase variation of a firstphrase included in the selected narrative content template can beassociated with a positive, energetic tone, and as such can include textconsistent with that tone. Another phrase variation of the first phrasecan be associated with, for example, an apathetic tone, or,alternatively, a negative or other tone. In such instances, that phrasevariation can include text consistent with the apathetic, negative, orother tone. In some embodiments, the content generation module 226 canselect each phrase variation for inclusion in the new narrative contentportion based at least in part on the narrative tone already selectedfor the entire new narrative content portion itself (as described above)and the tone of that phrase variation. Said differently, the contentgeneration module 226 can select, for each phrase included in thenarrative content template, a phrase variation whose narrative tonematches that of the new narrative content portion. In this manner, thecontent generation module 226 can define or “build” a new narrativecontent portion with a consistent narrative tone.

The network card 230 can be a hardware module (e.g., a wired and/orwireless Ethernet card, a cellular network interface card) configured totransmit information (e.g., data packets, cells, etc.) from and receiveinformation at the content generation engine 200. As shown in FIG. 2,the network card 230 can be operatively and/or physically coupled to theprocessor 210. In this manner, the processor 210 can, via the networkcard 230, exchange information with one or more other devices via anetwork (e.g. the public network 110 discussed in connection with FIG. 1above).

FIG. 3 is a schematic block diagram that illustrates a narrative contentgeneration system, according to another embodiment. More specifically,FIG. 3 illustrates a content generation engine 320 operatively coupledto an information provider 305 (via a network 310), a content generationdatabase 330 and a content database 340. The content database 340 can befurther coupled to a content server 350, which can itself be coupled,via the network 310, to a client device 360 and to a client device 370.

The information provider 305 can be any device, system, service and/orentity configured to provide (i.e., send) data, statistics, and/or otherinformation associated with a given event, occurrence, fact, person,group of people, place, and/or thing. In some embodiments, theinformation provider 305 can be similar to the statistics provider 105discussed in connection with FIG. 1 above. As shown in FIG. 3, theinformation provider can be operatively and/or physically coupled to thenetwork 310, and to the content generation engine 320 and/or the contentserver 350 via the network 310. As further shown in FIG. 3, theinformation provider 305 can send information to the content generation320 via one or more signals, data packets and/or data cells (e.g., thesignal 391 discussed below).

The network 310 can be any computer or information network capable ofmarshalling and transmitting data between two or more hardware devices,such as the information provider 305, the client device 360, the clientdevice, the content generation engine 320 and the content server 350.For example, the network 310 can be a local area network (LAN), a widearea network (WAN) or the Internet. In some embodiments, the network 310can be comprised of one or more wired and/or wirelessly connectedhardware devices. The network 310 can optionally be similar to thenetwork 110 discussed in connection with FIG. 1 above.

The content generation engine 320 can be any combination of hardwareand/or software (executing in hardware) configured to define one or morenarrative content portions (e.g., articles, reports, summaries, reviews,previews, analyses, short-form reports, phrases, sentences, paragraphs,etc.). In some embodiments, the narrative content portions can be basedat least in part on one or more narrative content templates receivedfrom the content generation database 330, information received from theinformation provider 305 and/or information received from the contentgeneration database 330. In some embodiments, the content generationengine 320 can be similar to the content generation engine 120 describedin connection with FIG. 1 above and/or to the content generation engine200 described in connection with FIG. 2 above. As shown in FIG. 3, thecontent generation engine 320 can receive one or more signals (e.g., thesignal 391) from the information provider 305 via the network 310. Thecontent generation engine 320 can additionally exchange one or moresignals (e.g., the signals 392 and 393) with the content generationdatabase 330. As also shown in FIG. 3, the content generation engine 320can exchange one or more signals (e.g., the signal 394) with the contentdatabase 340.

The content generation database 330 can be any combination of hardwareand/or software (executing in hardware) storing one or more narrativecontent templates for use by the content generation engine 320 indefining narrative content. In some embodiments, the content generationdatabase 330 can include statistics, data and/or other informationassociated with an event, one or more event participants, occurrence,person, place and/or thing for use by the content generation engine 320in defining a new narrative content portion. The content generationdatabase 330 can optionally be similar to the content generationdatabase 130 discussed in connection with FIG. 1 above.

The content database 340 can be any combination of hardware and/orsoftware (executing in hardware) storing one or morepreviously-generated narrative content portions defined and/or generatedby the content generation engine 320. In some embodiments, the contentdatabase 340 can receive from the content generation engine 320 one ormore signals including newly-defined narrative content for storage in amemory. The content database 340 can additionally exchange signals withthe content server 350 so as to provide narrative content responsive toone or more queries received from the content server 350. In someembodiments, the content database 340 can be substantially similar tothe content database 140 described in connection with FIG. 1 above.

The content server 350 can be any combination of hardware and/orsoftware (executing in hardware) configured to retrieve and/or serve(i.e., send) narrative content. More specifically, as shown in FIG. 3,the content server 350 can send one or more requests for one or morenarrative content portions and/or items to the content database 340. Asalso shown in FIG. 3, the content server 350 can accordingly receive oneor more responses from the content database 340 including the requestedone or more narrative content portions and/or items. As further shown inFIG. 3, the content server 350 can receive, via a network (e.g., thenetwork 310), one or more requests for narrative content from one ormore client devices (e.g., the client device 370). In some embodiments,the content server 350 can send one or more responses to a requestingclient device, the responses including narrative content requested fromthat client device. In some embodiments, the content server 350 can besubstantially similar to the content server 150 described in connectionwith FIG. 1 above.

Each of the client device 360 and the client device 370 can be anyhardware client device and/or software client module configured torequest, receive and/or display narrative content defined by the contentgeneration engine 320. As shown in FIG. 3, each of the client device 360and the client device 370 can send such requests and/or receive suchresponses from the content server 350 via the network 310. In someembodiments, any or each of the client device 360 and the client device370 can be a personal and/or mobile computing device executing a webbrowser program or application. In some embodiments, any or each of theclient device 360 and the client device 370 can be substantially similarto the client device 160 and the client device 170 described inconnection with FIG. 1 above.

Although not shown in FIG. 3, in some embodiments, any or each of theinformation provider 305, the content generation engine 320, the contentgeneration database 330, the content database 340, the content server350, the client device 360 and/or the client device 370 can be comprisedof multiple hardware devices and/or software modules.

As shown in FIG. 3, the information provider 305 can send a signal 391to the content generation engine 320 via the network 310. The signal 391can be or include, for example, an Ethernet packet, a data cell, and/orthe like, and can include data, statistics and/or other informationassociated with a specified event (e.g., a sporting event), anoccurrence (e.g., a news item), a person (e.g., a celebrity or otherfigure), a place and/or thing (e.g., a location, a derived metric orstatistic, a weather observation or forecast, etc.) for subsequent usein defining narrative content. Although shown in FIG. 3 as being sent tothe content generation engine 320, in some embodiments the signal 391can be sent via the network 310 to the content generation database 330for storage thereat and subsequent access by the content generationengine 320.

The content generation engine 320 can send a signal 392 to the contentgeneration database 330. More specifically, the signal 392 can include arequest for statistics and/or other information (e.g., a databaserequest, such as a Structured Query Language (SQL) query) for use indefining new narrative content. In some embodiments, the request caninclude a reference identifier, such as an event ID associated with areal-world event or occurrence, a virtual-world event, etc.Alternatively, the request can include a subject ID associated with asubject or topic to be described in the new narrative content portion.Although not shown in FIG. 3, in some embodiments, the contentgeneration engine 320 can receive the event ID and/or the subject IDbased on user input. Alternatively, the content generation engine 320can receive the event ID and/or the subject ID from the informationprovider 305. In some embodiments, the content generation engine 320 cansend the signal 392 in response to one or more triggers, such as atermination of a given event associated with the event ID (e.g., asporting event), a user request received at the content generationengine 320 (e.g., via an input peripheral of the content generationengine 320 or from a client device), a scheduled event included in apredefined schedule, etc.

As shown in FIG. 3, the content generation database 330 can also send asignal 393 to the content generation engine 320. The signal 393 caninclude, for example, a selected narrative content template or list ofcandidate narrative content templates. The signal 393 can alsooptionally include a set of phrase variations associated with a selectednarrative content template. In some embodiments, the signal 393 can alsoinclude statistics, data and/or other relevant information for use bythe content generation engine 320 in defining the new narrative content.

Upon receipt of the signal 393, the content generation engine 320 candefine new narrative content based at least in part on the selectednarrative content template and received information. In someembodiments, the content generation engine 320 can do so according tothe process described in connection with FIG. 2 above and/or the processdescribed in accordance with FIGS. 4-5 below.

Once it has defined the new narrative content based on the narrativecontent template and received statistics and/or other information, thecontent generation engine 320 can send a signal 394 to the contentdatabase 340. In some embodiments, the signal 394 can include thenarrative content, an identifier (e.g., an event ID), a tone typeassociated with the narrative content, etc. In this manner, the contentgeneration engine 320 can send the narrative content for storage at andsubsequent retrieval from the content database 340.

As further shown in FIG. 3, the client device 370 can send a signal 395to the content server via the network 310. In some embodiments, thesignal 395 can include a request for narrative content. For example, thesignal 395 can be a request formatted according to the HypertextTransfer Protocol (HTTP) or other known protocol. In the example, therequest can be sent from a web browser or other client applicationexecuting at the client device 370. In some embodiments, the request caninclude an identifier associated with the narrative content, such as anevent ID or subject ID.

As shown in FIG. 3, the content server 350 can receive the signal 395.In some embodiments, the content server 350 can receive the signal 395at a web server executing at the content server 350 and operativelycoupled to the network 310. In some embodiments, the content server 350can next send a signal 396 to the content database 340. In someembodiments, the signal 396 can include a database query/request for oneor more narrative content items associated with, for example, an eventIDspecified by the signal 395. In this manner, the content server 350 canrequest, from the content database 340, a narrative content portionoriginally requested by a user of the client device 370.

The content database 340 can next send a signal 397 to the contentserver 350. In some embodiments, the signal 397 can include a narrativecontent portion responsive to the database query/request included in thesignal 396. In some embodiments, the signal 397 can include HypertextMarkup Language (HTML) content for transmission to a web browserexecuting at the client device 370.

Upon receipt of the signal 397, the content server 350 can define aresponse to the signal 395 for transmission to the client device 370.The response can include, for example, a web page including thenarrative content included in the signal 397 and/or other content typebased thereon. Having defined the response, the content server 350 cansend a signal 398 including the response to the client device 370 (viathe network 310). Upon receipt of the signal 398, the client device 370can optionally display the narrative content (included in, for example aweb page) at a client application, such as a web browser executing atthe client device 370.

According to one or more embodiments, the data can be presented to auser via voice. For example, a user may select one among a plurality ofdifferent voices for presenting sports data. The data in any format maythen be converted to voice data of the selected type and presented tothe user. The voices that a user may select may be among severaldifferent sports commentators.

FIG. 4 is a block diagram that illustrates a method of selecting anarrative content template and generating/defining a new narrativecontent portion based thereon, according to another embodiment. Morespecifically, FIG. 4 illustrates a set of narrative content templates410 and a selected narrative content template 415 from the set ofnarrative content templates 410. FIG. 4 further illustrates a set ofphrase variations 420 associated with the selected narrative contenttemplate 415, a set of statistics 430 associated with a predeterminedevent ID or subject ID (not shown in FIG. 4) and a generated narrativecontent portion 425 based on the narrative content template 415, the setof phrase variations 420 and the set of statistics 430.

As shown in FIG. 4, a narrative content template 415 can be selectedfrom the set of narrative content templates 410. The set of narrativecontent templates 410 can optionally include multiple narrative contenttemplates, each of which is associated with a predetermined templatetype. For example, one or more narrative content templates from the setof narrative content templates 410 can be of any of the followingtemplate types: event preview, in-progress event update, eventrecap/summary, statistical analysis, progress report, etc. Each of theone or more narrative content templates from the set can also optionallybe associated with a narrative tone, such as a positive tone, anoptimistic tone, a hopeful tone, an energetic tone, an indifferent tone,a diplomatic tone, an angry tone, a pessimistic tone, a judgmental tone,or other tone type, and/or any combination thereof.

In some embodiments, the selected narrative content template 415 can beselected (e.g., by a content generation server such as the contentgeneration engine 320 of FIG. 3) based at least in part on a matchbetween a given content type associated with the event ID (or subjectID) and a template type of the selected narrative content template 415.Thus, the selected narrative content template 415 can be selectedbecause it includes content matching a desired content type (e.g., acontent type requested by a user and/or associated with the eventID/subject ID).

The selected narrative content template 415 can also be selected basedat least in part on a match between a given narrative tone type and anarrative tone of the selected narrative content template 415. Thus, theselected narrative content template 415 can be selected because itincludes content having a narrative tone matching a desired narrativetone type (e.g., a narrative tone type as determined/selected based onstatistics and/or other information associated with the event ID/subjectID. In a more specific example, in a sports event context, the selectedtone can be enthusiastic and positive when, based on the set ofstatistics 430, a given team participating in the sports event is aheavy favorite to win the sports event. Alternatively, in a financialnews context, the selected tone can be emotional and negative when theset of statistics 430 indicates the occurrence or existence of asubstantially negative financial and/or economic event, trend, etc.

As shown in FIG. 4, the narrative content template 415 can be atext-based document and/or file including a set of phrase indicatorsand/or variable indicators. For example, the narrative content template415 can include a series of phrase IDs and variable IDs configured toallow generation of a new narrative content portion (e.g., a file) by acontent generation module (e.g., the content generation module 226 ofFIG. 2) based at least in part on the narrative content template 415.

The set of phrase variations 420 associated with the narrative contenttemplate 415 can include multiple phrase variations associated with eachphrase ID included in the narrative content template 415. For example,the set of phrase variations 420 can include multiple phrase variationsassociated with the Phrase ID₁ included in the narrative contenttemplate 415, multiple phrase variations associated with the Phrase ID₂included in the narrative content template 415, etc. In someembodiments, the set of phrase variations 420 associated with thenarrative content template 415 can be a set of phrase variations furtherassociated with the preselected tone. As shown in FIG. 4, the generatednarrative content portion 425 can include a fourth phrase variation fromthe multiple phrase variations associated with Phrase ID₁ (denotedPhrase Variation₁₋₄). As also shown in FIG. 4, the narrative contentportion 425 can include a first phrase variation from the multiplephrase variations associated with Phrase ID₂ (denoted PhraseVariation₂₋₁), etc.

One or more of the set of statistics 430 associated with the event ID(or subject ID) can be included, as appropriate, in the narrativecontent portion 425. As shown in FIG. 4, the narrative content portion425 can include the Statistic₁, the Statistic₂, etc., each positionedwithin the narrative content portion 425 based on the position of acorresponding variable identifier (e.g., the Variable₁, the Variable₂,etc.) included in the narrative content template 415.

FIG. 5 is a flow diagram that illustrates a method of defining anarrative content portion based on an event ID, received statisticsinformation, a selected narrative content template, a selected tone anda set of selected phrase variations, according to another embodiment. Insome embodiments, each selected phrase variation from the set ofselected phrase variations can be associated with the selected tone andthe selected narrative content template.

A request can be received to define narrative content associated with anevent ID, 500. The request can be received at, for example, a serverdevice operatively coupled to a network. In some embodiments, therequest can be received via user input entered at a peripheraloperatively and/or physically coupled to the server device, via one ormore signals sent from another device (e.g., a client device). In someembodiments, the request can be based on a predetermined schedule ortriggered in response to a real-world event or occurrence, such as acompletion of an event, meeting, sports game or match, etc. In someembodiments, the request can be based triggered in response to avirtual-world event, such as a completion of a video game, a fantasyleague (e.g., a fantasy sports league) competition or matchup, etc. Insome embodiments, the event ID can be associated with a real-worldevent, such as a newsworthy event occurring in the real world.Alternatively, the event ID can be associated with a user-driven and/oruser-initiated event, such as a request for narrative content associatedwith a person, place, and/or thing, etc. indicated by a user. In someembodiments, the event ID can be a subject ID or topic ID associatedwith a general subject-matter or topic. Alternatively or additionally,the event ID can be associated with a virtual-world event.

Statistics and/or other information associated with the event ID can bereceived, 510. For example, raw data, participant names, entity names,team names, identifiers, locations, dates and times, metrics,statistics, etc. associated with the event ID can be received at aserver device configured to store information associated with multipleevent IDs. In some embodiments, the received information can bestatistics information associated with the event ID, such as sportsstatistics information associated with one or more leagues, venues,teams, players, games, matches, series, seasons, playoff series, etc.Alternatively, the received information can include relevant details orother information associated with an occurrence, happening, or event.Alternatively, the received information can include general and/or otherinformation associated with a topic, subject, person, place and/orthing.

A narrative content template can next be selected based at least in parton a template type associated with the event ID, 520. For example, ifthe event ID is associated with a specific sporting event, the event IDcan be associated with a narrative content template of any of thefollowing template types: game preview, in-game progress report, gamerecap, tournament preview, tournament recap, etc. Alternatively, if theevent ID is associated with a user-driven event, such as a user-drivenrequest for long-form or short-form content associated with auser-specified person, place, thing, idea, etc., the narrative contenttemplate can be of a short-form report template type, of a comparisontemplate type, etc. In some embodiments, the server device can randomlyselect or pseudo-randomly select a specific narrative content templateof the template type. In some embodiments, the server device canalternatively receive a specific narrative content template from anotherdevice employing a random or pseudo-random narrative content templateselection process based at least in part on the template type.

A narrative tone can next be selected based at least in part on theevent ID and received statistics and/or other information, 530. Morespecifically, the server can determine, from among a predefined list ofnarrative tones (e.g., apathetic, confident, pessimistic, optimistic,positive, negative, enthusiastic, etc.) which narrative tone isappropriate based on the statistics and/or other information. Forexample, if the received statistics and/or other information reflectsand/or indicates a negative occurrence, event, news item, or other pieceof information or fact, the server can determine that the narrativecontent should have a negative narrative tone. Alternatively, if thereceived statistics information indicates a positive, unexpectedoccurrence, event, news item, etc., the server can determine that thenarrative content should have a positive, surprised narrative tone.Although not discussed explicitly or shown in FIG. 5, the server candetermine any appropriate narrative tone for the narrative content(e.g., by selecting from among a list of tones). Although describedabove as being determined after the selection of the narrative template,in some embodiments, the narrative tone can be determined before theselection of the narrative template, and can, accordingly inform theselection of the narrative template.

The narrative content can be defined by parsing the selected narrativecontent template and adding, to the narrative content, (1) a selectedphrase variation for each phrase in the narrative content template and(2) a statistic or other information for each variable identifierincluded in each such selected phrase variation, 540. Said differently,the server can parse through the selected narrative content template,and progressively write out, to a memory, file, etc., appropriateportions of the narrative content based at least in part on the selectednarrative content template.

In some embodiments, the server can, for example, employ a parser/writermodule that parses through the narrative content template, consideringin sequence (i.e., in order) each phrase included therein. For eachphrase, the parser/writer module and/or another module executing at theserver can select a phrase variation associated with both that phraseand the narrative tone selected in step 530 above. In this manner, theparser/writer module can ensure at least a minimal amount of variance insuccessive narrative content generation processes. Having determined aselected phrase variation for the current phrase, the parser/writer canwrite, to the narrative content, that selected phrase variation. In someembodiments, the parser/writer module can additionally replace anyvariable identifiers included in the selected phrase variation. To doso, the parser/writer module can (1) determine whether any of thereceived statistics and/or other information includes informationcorresponding to one of the variable identifiers, and, if so (2) write,to the narrative content, the corresponding statistic and/or otherinformation in place of that variable identifier. By continuing thisprocess for each phrase included in the narrative content template, theparser/writer module can generate the new narrative content portionbased on the selected narrative content template, the new narrativecontent portion including specific and/or particular informationassociated with the given event, occurrence, user instruction, etc.

The narrative content can be stored at a database, 550. Morespecifically, in some embodiments, the server and/or the parser/writermodule executing thereon, thereat, or therein can write the newnarrative content portion to a memory, such as a database. In someembodiments, the database can be operatively and/or physically coupledto the server, or can be included at a memory included therein. In someembodiments, the database can be substantially similar to the contentdatabase 340 described in connection with FIG. 3 above. In suchembodiments, the server can send the generated narrative content forstorage thereat, such that the generated narrative content can be servedin response to one or more user requests associated therewith (e.g., webbrowser requests, e-mail-based requests, text message-based requests,etc.).

Some embodiments described herein relate to a computer storage productwith a non-transitory computer-readable medium (also can be referred toas a non-transitory processor-readable medium) having instructions orcomputer code thereon for performing various computer-implementedoperations. The computer-readable medium (or processor-readable medium)is non-transitory in the sense that it does not include transitorypropagating signals per se (e.g., a propagating electromagnetic wavecarrying information on a transmission medium such as space or a cable).The media and computer code (also can be referred to as code) may bethose designed and constructed for the specific purpose or purposes.Examples of non-transitory computer-readable media include, but are notlimited to: magnetic storage media such as hard disks, floppy disks, andmagnetic tape; optical storage media such as Compact Disc/Digital VideoDiscs (CD/DVDs), Compact Disc-Read Only Memories (CD-ROMs), andholographic devices; magneto-optical storage media such as opticaldisks; carrier wave signal processing modules; and hardware devices thatare specially configured to store and execute program code, such asApplication-Specific Integrated Circuits (ASICs), Programmable LogicDevices (PLDs), Read-Only Memory (ROM) and Random-Access Memory (RAM)devices.

Examples of computer code include, but are not limited to, micro-code ormicro-instructions, machine instructions, such as produced by acompiler, code used to produce a web service, and files containinghigher-level instructions that are executed by a computer using aninterpreter. For example, embodiments may be implemented using Java,C++, or other programming languages (e.g., object-oriented programminglanguages) and development tools. Additional examples of computer codeinclude, but are not limited to, control signals, encrypted code, andcompressed code.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, notlimitation, and various changes in form and details may be made. Anyportion of the apparatus and/or methods described herein may be combinedin any combination, except mutually exclusive combinations. Theembodiments described herein can include various combinations and/orsub-combinations of the functions, components and/or features of thedifferent embodiments described. For example, a mobile device validationsystem can include multiple access servers configured to authenticateone or more mobile device users and/or to validate one or more clientmobile devices.

What is claimed is:
 1. A non-transitory processor-readable mediumstoring code representing instructions that when executed cause aprocessor to: receive an event identifier (ID) associated with areal-world event; receive a first participant ID associated with theevent ID; receive a statistic value associated with the firstparticipant ID; analyze the statistic in relation to statistics obtainedfrom a statistics database to identify a statistical item of interest;determine a narrative tone; define, based on a content template, acontent portion including: a name of a first participant associated withthe first participant ID; the statistical item of interest; andnarrative text associated with the event, the text based at least inpart on a plurality of text elements associated with the contenttemplate, each text element from the plurality of text elements beingassociated with the narrative tone; and send the content portion to aphysical output device for presentation; wherein sending the contentportion to a physical device comprises sending the content portion to avoice synthesizer for conversion to voice data for audible presentation.2. The non-transitory processor-readable medium of claim 1, wherein thenarrative tone is determined based at least in part on the statisticalitem of interest.
 3. The non-transitory processor-readable medium ofclaim 2 wherein the narrative tone is further determined based at leastin part on at least one of: a recent performance of the firstparticipant; a ranking of the first participant; and a physical locationof the real-world event.
 4. The non-transitory processor-readable mediumof claim 1, further storing code representing instructions that whenexecuted cause a processor to: select a voice from a plurality ofdifferent voices; and instruct the voice synthesizer to convert thenarrative content portion to synthesized voice data based on theselected voice.
 5. The non-transitory processor-readable medium of claim1, wherein each text element from the plurality of text elements is oneof: a phrase; a sentence; or a paragraph.
 6. The non-transitoryprocessor-readable medium of claim 1, wherein the statistical item ofinterest is a trend that occurred as a result of the real-world event.7. An apparatus for automated natural language generation, comprising: astatistics analysis module, the statistics analysis module for receivingstatistics for a real-world event and analyzing the statistics byrunning one or more algorithms on at least the statistics to determineone or more particular items of interest related to the real-worldevent; a processor to be operatively coupled to a memory and to thestatistics analysis module, for executing content generation stepscomprising: receiving an instruction to define a content portion basedon the real-world event; receiving, from the statistics analysis module,a determined item of interest related to the real-world event;selecting, based at least in part on the determined item of interest, anarrative tone type; selecting, based at least in part on the determineditem of interest, a narrative template that includes a set of phrases;selecting, based on the narrative tone type, a phrase variation from aset of phrase variations associated with a first phrase from the set ofphrases to define a first selected phrase; selecting, based on thenarrative tone type, a phrase variation from a set of phrase variationsassociated with a second phrase from the set of phrases to define asecond selected phrase; sending a signal indicative of the narrativecontent portion that includes the first selected phrase and the secondselected phrase; and sending a signal to an output device for outputtingthe narrative content portion; and a voice synthesizer for: receivingthe signal indicative of the narrative content portion; converting thenarrative content portion to voice data; and outputting the voice dataaudibly.
 8. The apparatus of claim 7, the voice synthesizer further forselecting a voice from a plurality of different voices, and forconverting the narrative content portion to voice data based on theselected voice.
 9. The apparatus of claim 7, the statistics analysismodule for acting in substantially real-time to determine the item ofinterest during the performance of the real-world event.
 10. Theapparatus of claim 7, wherein the real-world event is a sportingcontest.
 11. The apparatus of claim 7, wherein the item of interest is atrend that occurred as a result of the real-world event.
 12. A methodfor providing automated natural language generation, comprising:receiving a digital input representing a real-world event; receiving aninstruction to define a narrative content portion based on thereal-world event; receiving, from a database, a plurality of dataassociated with the event, including statistics for the real-worldevent; running one or more algorithms on at least the receivedstatistics to determine one or more particular items of interest relatedto the real-world event; selecting, based at least in part on thedetermined item of interest, a narrative tone type; selecting, based atleast in part on the determined item of interest, a narrative contenttemplate including a plurality of variable identifiers; defining thenarrative content portion based at least in part on a combination of: atext portion of the narrative content template, the text portion beingbased on the narrative tone type; and for each variable identifier fromthe plurality of variable identifiers, a datum from the plurality ofdata associated with that variable identifier; and sending a signal suchthat the narrative content portion is synthesized as output on an outputdevice; wherein the output is synthesized vocal output.
 13. The methodof claim 12 further comprising: selecting a voice from a plurality ofdifferent voices, and synthesizing the narrative content portion asvocal output based on the selected voice.
 14. The method of claim 12,wherein determining the item of interest occurs in substantiallyreal-time during the performance of the real-world event.
 15. The methodof claim 12, wherein determining the item of interest further comprises:identifying a trend that occurred as a result of the performance of thereal-world event; and wherein the synthesized output includessynthesized output of the identified trend.
 16. The method of claim 12,wherein the real-world event is a sporting contest.
 17. The method ofclaim 16, wherein the item of interest is based on a team's historicalwinning record against a betting point spread.